package User;

import book.Book;
import book.Library;

import java.time.LocalDate;
import java.util.Scanner;

public class AdminUser extends User {
   public  Scanner scanner=new Scanner(System.in);
   public Library library=Library.getLibrary();
    public AdminUser(String userName,int userID){
        super(userName,userID,"管理员");
    }

    public int display() {
        System.out.println("普通⽤⼾ " + userName + " 的操作菜单:");
        System.out.println("1. 查找图书");
        System.out.println("2. 打印所有的图书");
        System.out.println("3. 退出系统");
        System.out.println("4. 借阅图书");
        System.out.println("5. 归还图书");
        System.out.println("6. 查看当前个⼈借阅情况");
        System.out.println("请选择你的操作：");
        return scanner.nextInt();
    }
    public void addBook() {
        scanner.nextLine();//吞掉回车键；
        System.out.println("请输⼊书名：");
        String title = scanner.nextLine(); // 输⼊书名
        System.out.println("请输⼊作者：");
        String author = scanner.nextLine(); // 输⼊作者
        System.out.println("请输⼊类别：");
        String category = scanner.nextLine(); // 输⼊图书类别
        System.out.println("请输⼊出版年份：");
        int year = scanner.nextInt(); // 输⼊出版年份
        scanner.nextLine(); // 吞掉换⾏符
        LocalDate shelfDate = LocalDate.now(); // 当前时间作为上架时间
        Book newBook = new Book(title, author, category, year, shelfDate);// 创建新书对象

    //调⽤图书类 添加图书
        library.addBook(newBook);
    }
    //图书修改 ⽀持修改书名 作者 类别
    public void updateBook() {
        System.out.println("目前书籍信息如下");
        library.displayBook();
        System.out.println("请输入你想要更新的图书ID");
        int bookId= scanner.nextInt();
        scanner.nextLine();
        Book book =library.searchById(bookId);//到图书馆查询想要修改的书籍ID对应的书；
        if(book==null){
            System.out.println("没有你想要修改的图书"+bookId);
            return;
        }
        System.out.println("当前书名"+book.getTitle());
        System.out.println("请输入新书的名字；");
        String newTitle=scanner.nextLine();

        System.out.println("当前作者"+book.getAuthor());
        System.out.println("请输入新作者名字");
        String newAuthor= scanner.nextLine();

        System.out.println("当前类别名"+book.getCategory());
        System.out.println("请输入新的类别名");
        String newCategory= scanner.nextLine();
        book.setTitle(newTitle);
        book.setAuthor(newAuthor);
        book.setCategory(newCategory);
        library.updateBook(book);
    }
    //删除书籍
    public void removeBook() {
        System.out.println("目前书籍如下");
        library.displayBook();
        System.out.println("请输入你想要删除的书籍ID");
        int bookId=scanner.nextInt();
        scanner.nextLine();
        Book removeBook=library.searchById(bookId);
        if(removeBook==null){
            System.out.println("没有您想要删除的图书");
        }
        //进行删除；
        library.removeBook(removeBook.getBookId());
        System.out.println("删除成功");
    }
    public void borrowCount() {
        library.borrowCount();
    }

    //查询最受欢迎的前n本书 【借阅报告】
    public void generateBook() {
        System.out.println("请输入你要查看的最受欢迎的前K本书,注意k值不能超过："+library.getCountBook());
        int k = scanner.nextInt();
        if(k<0||k> library.getCountBook()){
            System.out.println("没有要查询的前"+k+"本受欢迎的书");;
            return ;
        }
        library.generateBook(k);
    }
    //查看库存状态
    public void checkInventoryStatus() {
        library.checkInventoryStatus();
    }
//并移除上架超过⼀年的图书

    public void checkAndRemoveOldBooks() {
        library.checkAndRemoveOldBooks();
    }
    public void exit() {
        library.exit();
    }
}



